package com.homework;

import java.util.*;

/**
 * 在一个List集合中生成20个随机整数(100以内)
 * 然后按照从小到大的顺序排列，排好后再将第6个-第15个元素
 * 按照从大到小顺序排列，并最终输出集合
 * 例如:
 * 1,2,3,4,5,15,14,13,12,11,10,9,8,7,6,16,17,18,19,20
 *
 * @author pc
 */
public class Test01 {
    public static void main(String[] args) {
        // 创建一个Random对象，用于生成随机数
        Random random = new Random();

        // 创建一个空的ArrayList，用于存储生成的随机数
        List<Integer> list = new ArrayList<>();

        // 使用for循环生成20个随机数，并将它们添加到list中
        for (int i = 0; i < 20; i++) {
            // 生成一个0到100之间的随机整数
            int num = random.nextInt(101);
            // 将生成的随机数添加到list中
            list.add(num);
        }

        // 打印原始的随机数列表
        System.out.println(list);

        // 对列表中的元素进行升序排序
        Collections.sort(list);

        // 打印排序后的列表
        System.out.println(list);

        // 使用subList方法截取列表中的第5个到第16个元素（包含第5个，不包含第16个）
        List<Integer> list1 = list.subList(5, 16);

        // 打印截取后的子列表
        System.out.println(list1);

        // 使用Collections.sort方法对子列表进行降序排序
        // 这里使用了lambda表达式定义了一个比较器，o2 - o1表示降序排序
        Collections.sort(list1, (Integer o1, Integer o2) -> o2 - o1);

        // 打印排序后的子列表
        System.out.println(list1);
    }

}









